[AWS] VPC 서비스 및 기본개념


AWS의 네트워크 VPC 서비스에 대해 알아보고,
기본적인 동작 방식에 대해 알아봅시다!

VPC 란?

  • VPC는 Virtual Private Cloud의 약자로 AWS 클라우드 내 논리적으로 독립된 섹션을 제공
  • 독립된 가상의 클라우드 네트워크
  • 사용자에 따라 네트워크 환경을 직접 설계를 할 수 있다.

    • IP 대역, 인터페이스, 서브넷, 라우팅 테이블, 인터넷 게이트웨이, 보안 그룹, 네트워크 ACL 등

VPC의 종류

  • Default VPC

    • 리전별로 1개씩 생성되어 있다.
    • 기본 VPC 내에 AWS 리소스가 미리 정해져 있다.
  • Custom VPC

    • 사용자 정의에 의해 수동으로 AWS 리소스를 생성하고 제어할 수 있음
구분 기본 VPC 사용자 VPC
생성 주체 AWS 사용자
AWS 리소스 정해진 리소스 미리 생성 수동으로 생성
리전 별 생성 수 1개 최대 5개(기본값)

VPC의 특징

  1. 확장성

    • 클라우드 기반에 손쉽게 VPC 자원을 생성하고 삭제가 가능
  2. 보안

    • 인스턴스 레벨(보안그룹)서브넷 레벨(네트워크 ACL)에서 트래픽의 유입을 허용할 수 있어 보안을 강화할 수 있음
  3. 쉬운 리소스 관리

    • VPC 내 리소스에 대해 사용자가 원하는대로 쉽게 제어가 가능
    • 네트워크 지표 및 모니터링 툴을 활용하여 사용자에게 높은 가시성 제공

VPC 리소스

서브넷 개념

  • 서브넷의 일반적인 개념은 네트워크 영역을 부분적으로 나눈 망입니다.

    • 클라우드 환경의 VPC에서도 서브넷을 통해 네트워크를 분리하여 나눌 수 있습니다.
💡

중요개념!!

  • 서브넷의 IP 대역은 VPC의 IP 대역에 속해 있어야하며, 서브넷은 1개의 가용영역에 종속되어야 합니다.
  • 또한 서브넷에 할당할 수 있는 IP 대역에서 미리 예약되어 있는 IP 주소가 있습니다.
  • 예약된 IP 주소들은 AWS 자원에게 할당할 수 없습니다.
  • 서브넷 IP 대역에서 첫번째에서 네번째까지 IP 주소는 예약되어 있으며, 마지막 주소 또한 예약되어있습니다.

퍼블릭 서브넷과 프라이빗 서브넷

  • 서브넷은 크게 퍼블릭 서브넷과 프라이빗 서브넷으로 나눌 수 있습니다.

    • 퍼블릭은 공공 인터넷, 프라이븟은 사설 네트워크 개념
  • 프라이빗 서브넷은 기본적으로 외부 인터넷과 통신이 불가능하지만, NAT 게이트웨이를 통해 통신이 가능합니다.

가상 라우터와 라우팅 테이블

  • VPC를 생성하면 자동으로 가상 라우터가 생성

    • 가상 라우터는 라우팅 테이블을 가지고 있어 목적지 네트워크로 라우팅하여 통신
  • 가상 라우터에서는 서브넷별로 라우팅 테이블을 매핑시켜줄 수 있음

    • 서브넷 당 개별적인 라우팅 테이블을 가질 수 있다는 의미

인터넷 게이트웨이

  • VPC와 인터넷 간의 논리적인 연결을 의미합니다.

    • VPC 당 1개만 연결이 가능
    • 인터넷 게이트웨이 사용 대상은 퍼블릭 IP를 사용하는 퍼블릭 서브넷 내의 자원입니다.
    • 퍼블릭 서브넷은 자신의 라우팅 테이블에 외부 인터넷으로 나가는 타깃을 인터넷 게이트웨이로 지정해주어야 합니다.
  • 인터넷 게이트웨이는 양방향으로 연결을 지원

NAT 게이트웨이

  • 인터넷 게이트웨이처럼 외부 인터넷을 연결하는 관문 역할
  • NAT(Network Address Translation)의 약자로 네트워크 주소 즉, IP 주소를 변환해 주는 기술입니다.
  • 인터넷 구간은 퍼블릭 IP를 통해 통신이 이뤄지고, 프라이빗 IP는 인터넷 구간으로 넘어갈 수 없지만, NAT 게이트웨이를 이용해 퍼블릭 IP로 변환하여 통신이 가능해집니다.

보안 그룹과 네트워크 ACL

  • 네트워크 보안 기술을 의미

    • 원하는 데이터만 수용할 수 있게 필터링
  • VPC는 인스턴스 레벨과 서브넷 레벨 상에서 대상을 필터링 할 수 있는 보안 기술을 제공

    • 보안 그룹은 인스턴스 레벨에서, ACL(Access Control List)은 서브넷 레벨에서

Reference

따라하며 배우는 AWS 네트워크 입문


Hello, I'm@nickhealthy
개발자를 꿈꾸고, 파이썬과 클라우드에 관심이 많은 비전공자

Github